#include <iostream>
#include "data.h"
#include <stdlib.h>



using namespace std;

int main()
{
    system("color 02");

    char q[1];
    int i;
    while(q)
    {
        switch(tolower(meniu()))
        {
            case 'm': // Afiseaza meniu
                meniu();
            break;
            case 'a': // adaugare membri in fisier
                system("cls");
                cout<<"=================== APLICATIE GESTIUNE ASOCIATIE STUDENTEASCA ==================\n";
                cout<<"\n----- ADAUGARE MEMBRI:";
                cout<<"Cati membri doriti sa adaugati?\n= ";
                cin>>n;
                int x;
                x = nr();
                for(i=x;i<=x+n-1;i++){
                    cout<<"\n\nMembru nr. ["<<i<<"]:\n";
                    a[i].id = i;
                    while(strlen(a[i].nume) < 2){
                    cout<<"Nume: ";
                    cin>>a[i].nume;
                    }
                    while(strlen(a[i].prenume) < 2){
                    cout<<"Prenume: ";
                    cin>>a[i].prenume;
                    }
                    while(strlen(a[i].varsta) != 2){
                    cout<<"Varsta: ";
                    cin>>a[i].varsta;}
                    while(strlen(a[i].email) < 2){
                    cout<<"Email: ";
                    cin>>a[i].email;
                    }
                    while(strlen(a[i].telefon) != 10){
                    cout<<"Telefon: ";
                    cin>>a[i].telefon;}
                }
                salveaza_membri(x);

            break;

            case 'l': // afisare membri
                system("cls");
                cout<<"=================== APLICATIE GESTIUNE ASOCIATIE STUDENTEASCA ==================\n";
                cout<<"\n------ LISTA MEMBRI:\n\n";
                incarca_membri(nr());
                cout<<"ID| "<<setw(3)<<"NUME"<<setw(15)<<"| PRENUME"<<setw(11)<<"| VARSTA"<<setw(1)<<"| EMAIL"<<setw(33)<<"| TELEFON\n";
                for(i=0;i<=37;i++)
                    cout<<"--";
                for(i=0;i<=nr()-1;i++){
                    cout<<"\n"<<setw(2)<<a[i].id<<"| "<<setw(10)<<a[i].nume<<"| "<<setw(10)<<a[i].prenume<<"| "<<setw(6)<<a[i].varsta<<"| "<<setw(28)<<a[i].email<<"| "<<setw(5)<<a[i].telefon;
                    cout<<"\n";
                }

            break;
            case 'i': // informatii despre aplicatie
                system("cls");
                cout<<"=================== APLICATIE GESTIUNE ASOCIATIE STUDENTEASCA ==================\n";
                cout<<"\n\nScopul aplicatiei este de a tine o evidenta asupra membrilor unei asociatii\n studentesti si a evenimentelor din cadrul acesteia";
            break;
            case 'o': // informatii autor aplicatie
                system("cls");
                cout<<"=================== APLICATIE GESTIUNE ASOCIATIE STUDENTEASCA ==================\n";
                cout<<"\nNume: Dolhescu";
                cout<<"\nPrenume: Andrei";
                cout<<"\nEmail: andreidolhescu@ymail.com";
                cout<<"\nCalculatoare, anul 2, grupa 1121C";
                break;
            case 'x': // iesire aplicatie
                exit(1);
            break;
            case 's':{ // sterge un membru
                system("cls");
                cout<<"=================== APLICATIE GESTIUNE ASOCIATIE STUDENTEASCA ==================\n";
                cout<<"\n--------- STERGE MEMBRU:\n\n";
                cout<<"Introduceti id-ul membrului:\n= ";
                int id, ok=0;
                cin>>id;

                for(i=0;i<=nr()-1;i++){
                    if(a[i].id == id){
                    system("cls");
                    cout<<"=================== APLICATIE GESTIUNE ASOCIATIE STUDENTEASCA ==================\n";
                    cout<<"\n--------- STERGE MEMBRU:\n\n";
                    cout<<"Membrul pe care doriti sa il stergeti este: \n\n";
                    cout<<"id: "<<a[i].id<<"\nnume: "<<a[i].nume<<"\nprenume: "<<a[i].prenume<<"\nvarsta: "<<a[i].varsta<<"\nemail: "<<a[i].email<<"\ntelefon: "<<a[i].telefon;
                    cout<<"\n\n";
                    ok = 1;
                    break;
                    }
                }
                if(ok == 0){
                    cout<<"Membrul cu id-ul "<<id<<" nu exista in baza de date.";
                }else{
                cout<<"Doriti sa il stergeti? (Y/N): ";
                if(getch()== 'y'){
                    sterge_membru(nr(),id);
                }else{
                cout<<"\nMembrul nu va fi sters.\n";
                }
                }}
            break;
            case 'c': // cautare membru
            system("cls");
            cout<<"=================== APLICATIE GESTIUNE ASOCIATIE STUDENTEASCA ==================\n";
            cout<<"\n--------- CAUTARE MEMBRU:\n\n";
            cout<<"n - cautare dupa NUME;\n";
            cout<<"p - cautare dupa PRENUME;\n";
            cout<<"e - cautare dupa EMAIL;\n";
            cout<<"v - cautare dupa VARSTA;\n";
            cout<<"t - cautare dupa TELEFON;\n\n";
            cout<<"Selectati optiune: ";
            incarca_membri(nr());
            cautare_membru(getch(),nr());
            break;
            default:
                system("cls");
                cout<<"=================== APLICATIE GESTIUNE ASOCIATIE STUDENTEASCA ==================\n";
                cout<<"\n\n[!!! ATENTIE !!!] - Optiune inexistenta!";
            break;
            case 'e': // afisare evenimente
                system("cls");
                cout<<"=================== APLICATIE GESTIUNE ASOCIATIE STUDENTEASCA ==================\n";
                cout<<"\n----- EVENIMENTE:\n\n";
                event lista;
                lista.arata_evenimente();
            break;
            case 'b': //adaugare eveniment
                system("cls");
                cout<<"=================== APLICATIE GESTIUNE ASOCIATIE STUDENTEASCA ==================\n";
                cout<<"\n----- ADAUGA EVENIMENT:";
                while(strlen(e[0]._titlu) < 2){
                cout<<"\n\n Titlu eveniment:\n= ";
                gets(e[0]._titlu);
                }
                while(strlen(e[0]._locatie) < 2){
                cout<<"Locatie eveniment:\n= ";
                gets(e[0]._locatie);
                }
                while(strlen(e[0]._data) !=10){
                cout<<"Data eveniment [FORMAT 01/03/2014 - D/M/Y]:\n= ";
                gets(e[0]._data);
                }
                e[0].adauga_eveniment(e[0]._titlu,e[0]._locatie,e[0]._data);
            break;
            case 'd': // sterge eveniment
            system("cls");
                cout<<"=================== APLICATIE GESTIUNE ASOCIATIE STUDENTEASCA ==================\n";
                cout<<"\n--------- STERGE EVENIMENT:\n\n";
                cout<<"Introduceti nr. evenimentului:\n= ";
                event s;
                int e_id,ok;
                cin>>e_id;
                    system("cls");
                    cout<<"=================== APLICATIE GESTIUNE ASOCIATIE STUDENTEASCA ==================\n";
                    cout<<"\n--------- STERGE EVENIMENT:\n\n";
                    cout<<"Evenimentul pe care doriti sa il stergeti este: \n\n";
                    s.arata_eveniment(e_id);
                    cout<<"\n\n";
                if(ok == 0){
                    cout<<"Evenimentul nr: "<<e_id<<" nu exista in baza de date.";
                }else{
                cout<<"Doriti sa il stergeti? (Y/N): ";
                if(getch()== 'y'){
                    s.sterge_eveniment(e_id);
                }else{
                cout<<"\nMembrul nu va fi sters.\n";
                }
                }
            break;
        }
    cout<<"\n\n\n____________________________________________\n Apasati tasta M pentru a reveni la MENIU.";
    getch();
    }
    return 0;
    system ("pause");
}
